1. Field
The described embodiments relate to techniques for providing results in response to queries. More specifically, the described embodiments relate to techniques for providing the results by performing sets of predefined query-processing operations on storage subsystems in a distributed storage system.
2. Related Art
Data in data storage systems is often organized using databases, which may facilitate retrieval of the data in response to one or more requests or queries. In order to optimize the response to a particular query, one or more indexes may be used in the data storage system. These indexes may be data structures that include pointers to address fields or records in the database that are associated with the query, thereby facilitating an accelerated response to the query.
However, the capabilities of existing databases are often limited. In particular, it can be difficult for a database to support (with indexes and sets of query-processing operations) all the capabilities that multiple different applications need. For example, the databases may not be able to encapsulate the business logic or rules for these capabilities without excessive complexity or expense. Consequently, a particular application may provide requests or queries that the database is not configured to support or for which the database is not optimized, or may not be able to submit those requests or queries in a native or preferred format. This conflict between the database and the applications that access the database may negatively affect the applications' performance and/or users' experiences.
Note that like reference numerals refer to corresponding parts throughout the drawings. Moreover, multiple instances of the same part are designated by a common prefix separated from an instance number by a dash.